Sadegh Sadeghi

Contact information

Assistant Professor at Department of Mathematics

Institute for Advanced Studies in Basic Sciences (IASBS), No. 444, Prof. Yousef Sobouti Blvd., Zanjan 45137-66731, Iran

s.sadeghi.khu@gmail.com, s.sadeghi@iasbs.ac.ir

+98 24 3315 5064

Public key for PGP 16d55a935e4b8085d3d93477fdf30d89f220a621



Course Director

  • Sadegh Sadeghi
    Assistant Professor
    s.sadeghi iasbs.ac.ir

Courses

Cryptography I & II

Reference books

1. Introduction to Modern Cryptography by Jonathan Katz and Yehuda Lindell.

Download Contents

"Introduction to Modern Cryptography" offers a contemporary approach to the subject, presenting cryptography from a computer science standpoint. This book is designed as a textbook for introductory courses at the undergraduate or graduate level, suitable for self-study, and serves as a valuable reference for security researchers and professionals. The first part focuses on private key cryptography, while the second part delves into public key cryptography. Additionally, the book addresses post-quantum cryptography and the concept of zero knowledge.

2. Understanding Cryptography: A Textbook for Students and Practitioners by Christof Paar, Jan Pelzl.

Download Contents

Following an introduction to the fundamentals of cryptography and data security, the authors of this text proceed to elucidate the primary techniques employed in modern cryptography. Various chapters delve into topics such as stream ciphers, the Data Encryption Standard (DES) and its triple variant (3DES), the Advanced Encryption Standard (AES), block ciphers, the RSA cryptosystem, public-key cryptosystems based on the discrete logarithm problem, elliptic-curve cryptography (ECC), digital signatures, hash functions, Message Authentication Codes (MACs), and methods for establishing secure keys, including the utilization of certificates and public-key infrastructure (PKI).

Advanced math software

Reference books

1. A Primer on Scientific Programming with Python by Hans Petter Langtangen.

Download Contents

This book provides an introductory guide to computer programming for scientific applications, using the Python language. The focus is on practical examples and problem-solving, drawing from various fields such as mathematics, numerical calculus, statistics, physics, biology, and finance. The book covers both "Matlab-style" and procedural programming, as well as object-oriented programming. A background in high school mathematics is required, and it is beneficial to study classical and numerical one-variable calculus alongside reading this book. In addition to learning programming skills, readers will also discover how to solve mathematical problems in scientific and engineering domains using numerical methods and programming. By integrating programming, mathematics, and scientific applications, the book establishes a strong foundation for computational science practice.

2. Understanding Cryptography: A Textbook for Students and Practitioners by Einar Smith.

Download Contents

This book offers an overview of essential programming tools and techniques used in numerical mathematics and scientific computing. Rather than focusing on a specific programming language, it emphasizes the fundamental concepts behind these tools. The book initially presents concepts using the beginner-friendly Python language and then explores their applications in different scientific programming environments such as C/C++, Julia, MATLAB, and Maple. It also covers various approaches to distributed computing. By studying and comparing multiple languages, the book becomes a valuable resource for mathematicians and practitioners who need to assess which programming language is most suitable for their specific needs and objectives.

Topics in cryptography

Reference books

1. Introduction to Modern Cryptography by Jonathan Katz and Yehuda Lindell.

Download Contents

"Introduction to Modern Cryptography" offers a contemporary approach to the subject, presenting cryptography from a computer science standpoint. This book is designed as a textbook for introductory courses at the undergraduate or graduate level, suitable for self-study, and serves as a valuable reference for security researchers and professionals. The first part focuses on private key cryptography, while the second part delves into public key cryptography. Additionally, the book addresses post-quantum cryptography and the concept of zero knowledge.

2. Understanding Cryptography: A Textbook for Students and Practitioners by Christof Paar, Jan Pelzl.

Download Contents

Following an introduction to the fundamentals of cryptography and data security, the authors of this text proceed to elucidate the primary techniques employed in modern cryptography. Various chapters delve into topics such as stream ciphers, the Data Encryption Standard (DES) and its triple variant (3DES), the Advanced Encryption Standard (AES), block ciphers, the RSA cryptosystem, public-key cryptosystems based on the discrete logarithm problem, elliptic-curve cryptography (ECC), digital signatures, hash functions, Message Authentication Codes (MACs), and methods for establishing secure keys, including the utilization of certificates and public-key infrastructure (PKI).

Cryptographic Protocol

Reference book